# Contributor: Laurent Bercot <ska-devel@skarnet.org>
# Maintainer: Laurent Bercot <ska-devel@skarnet.org>
pkgname=bearssl
pkgver=0.6_git20241009
_pkgcommit=3c040368f6791553610e362401db1efff4b4c5b8
pkgrel=0
pkgdesc="The BearSSL implementation of the SSL/TLS protocol"
url="https://bearssl.org/"
arch="all"
license="MIT"
subpackages="$pkgname-static $pkgname-dev $pkgname-libs"
source="
	bearssl-$pkgver.tar.gz::https://bearssl.org/gitweb/?p=BearSSL;a=snapshot;h=$_pkgcommit;sf=tgz
	bearssl-brssl-dynamic.patch
	bearssl.pc
"

builddir=$PWD/src/BearSSL-${_pkgcommit:0:7}

build() {
	make -j${JOBS} \
	  CC="${CC:-gcc}" \
	  CFLAGS="-W -Wall -fPIC $CFLAGS" \
	  LD="${CC:-gcc}" \
	  LDFLAGS="$CFLAGS $LDFLAGS" \
	  LDDLL="${CC:-gcc}" \
	  LDDLLFLAGS="$CFLAGS $LDFLAGS -shared -Wl,-soname,libbearssl.so.${pkgver%%.*}" \
	  D=".so.$pkgver"
}

package() {
	mkdir -p "$pkgdir"/bin "$pkgdir"/usr/include "$pkgdir"/usr/lib
	cp -f "$builddir/build/brssl" "$pkgdir/bin/"
	cp -f "$builddir"/inc/* "$pkgdir/usr/include/"
	cp -f "$builddir/build/libbearssl.a" "$pkgdir/usr/lib/"
	cp -f "$builddir/build/libbearssl.so.$pkgver" "$pkgdir/usr/lib/"
	ln -sf "libbearssl.so.$pkgver" "$pkgdir/usr/lib/libbearssl.so.${pkgver%%.*}"
	ln -sf "libbearssl.so.${pkgver%%.*}" "$pkgdir/usr/lib/libbearssl.so"
	install -D -m644 "$srcdir"/bearssl.pc "$pkgdir"/usr/lib/pkgconfig/bearssl.pc
}

check() {
	cd "$builddir/build"
	./testx509
	./testcrypto all
}

sha512sums="
1d6957515833c81ca3fa070bef1ddc82fab3ff03ca3e8a81aae3f8c09b01d1ed488eb8f54988f25c09cbfbc7a90a4cd1de13ba179f205580c9c73164a0ced2a8  bearssl-0.6_git20241009.tar.gz
f5fe047862eb355a662ccb1b95c2ca4a870ac0f8d3f4cada5396d2f6a6635647db53fbeb038f9a7651b84d6cda32b6415ce0f69a8da92636d3b3b76578114d5c  bearssl-brssl-dynamic.patch
9b4972cb47e59b3e090429d08734d90c77bc29868cdb3efe3de7b38de4b183880e71552319242f0cac9d7ffe8547b6238fa483a6be462598f5f53c394fe4371c  bearssl.pc
"
